0. はじめに

このページはKAKENHIデータベースからダウンロードできるCSVファイルの「審査区分」列を用いて、小区分から対応する中区分(大区分)をつけるためのコードを紹介していきます。

具体的には

このようにします。

1. 下準備

必要なパッケージは以下の通りです。審査区分が付いているのは2018年度以降のデータになりますが、今回は2019年度の採択課題を用います。

# パッケージの読み込み
library(data.table)   # 高速なデータインポートのため
library(dplyr)        # データの整理のため
library(DT)           # 集計表の出力のため
library(stringr)      # 文字列操作のため
library(tidyr)        # 入れ子構造の解除のため

# インストールされていない場合は、「#」から始まるコマンドの「#」を外して先に実行してください。

# install.packages("data.table")
# install.packages("dplyr")
# install.packages("DT")
# install.packages("stringr")

# データの読み込み
d <- fread("kaken_2019_20191201.csv")

また、今回の処理を行うにあたり、以下の通りの前処理をしておきます。 1 審査区分が含まれる研究課題のみを抽出 2 全てのまた、ついでに不必要な列は削除してきます。

d <- d %>%
  select(研究種目, 審査区分, 総配分額) %>%    # 列の絞り込み
  filter(審査区分 != "")                    # 審査区分が空白の行を削除

# データの表示
datatable(d) 
d$審査区分 %>% table %>% as.data.frame %>% datatable

2. データの整理

今回も2019年度の採択課題を用いていきます。また、以下のコードでは必要な列の絞込みと審査区分を持っている行のみを抽出しています(※「特設分野」等では「審査区分」列は空白なため)。

# 
d <- d %>%
  select(研究種目, 審査区分, 総配分額) %>%
  filter(審査区分 != "")

# データの表示
datatable(d)